/** 布局文件 */
export class TWcsSceneDevice3d {
  /** 获取或设置布局对象编号 - babylon.js参数 - 用来代替mesh的ID */
  layoutObjectId!: string;

  /** 获取或设置布局对象名称 - babylon.js参数 - 用来显示设备名称 */
  layoutObjectName?: string;

  /** 获取或设置当前显示对象所属服务器编号 */
  serviceId?: string;

  /** 获取或设置布局对象对应的对象编号，有可能是位置编号或设备编号等 - babylon.js参数 - 用来代替设备的设备编号(不是设备时可以不使用) */
  objectId?: string;

  /** 获取或设置布局对象品牌型号编号,如果布局对象是设备 */
  brandModelId?: string;

  /** 获取或设置布局父节点对象编号 - babylon.js参数 - 用来查找父节点 */
  parentLayoutObjectId?: string;

  /** 获取或设置布局对象点击时打开的窗口 */
  openFormClassType?: string;

  /** 获取或设置布局类类型，GUI显示时用于获取制图路径 - babylon.js参数 - 用来实例化具体的AMesh子类 */
  objectClassType?: string;
  layoutClassPara?: string;

  /** 获取或设置模型是否可见 - babylon.js参数 - 用来标记模型是否可见 */
  isVisible?: boolean;

  /** 获取或设置布局对象显示用的X坐标 - babylon.js参数 - 用来记录模型位置的X轴 */
  displayX!: number;

  /** 获取或设置布局对象显示用的Y坐标 - babylon.js参数 - 用来记录模型位置的Y轴 */
  displayY!: number;

  /** 获取或设置布局对象显示用的Z坐标 - babylon.js参数 - 用来记录模型位置的Z轴 */
  displayZ!: number;

  /** 获取或设置布局对象显示用的X方向的长度 - babylon.js参数 - 内置模型的X轴长度 */
  displayLengthX!: number;

  /** 获取或设置布局对象显示用的Y方向的长度 - babylon.js参数 - 内置模型的Y轴长度 */
  displayLengthY!: number;

  /** 获取或设置布局对象显示用的Z方向的长度 - babylon.js参数 - 内置模型的Z轴长度 */
  displayLengthZ!: number;

  /** 获取或设置布局对象显示用的X轴旋转 - babylon.js参数 - 用来记录模型旋转的X轴 */
  displayRotationX!: number;

  /** 获取或设置布局对象显示用的Y轴旋转 - babylon.js参数 - 用来记录模型旋转的Y轴 */
  displayRotationY!: number;

  /** 获取或设置布局对象显示用的Z轴旋转 - babylon.js参数 - 用来记录模型旋转的Z轴 */
  displayRotationZ!: number;

  /** 获取或设置布局对象显示用的X轴缩放 - babylon.js参数 - 用来记录模型缩放的X轴 */
  displayScalingX!: number;

  /** 获取或设置布局对象显示用的Y轴缩放 - babylon.js参数 - 用来记录模型缩放的Y轴 */
  displayScalingY!: number;

  /** 获取或设置布局对象显示用的Z轴缩放 - babylon.js参数 - 用来记录模型缩放的Z轴 */
  displayScalingZ!: number;

  /** 获取或设置设备实时X坐标偏移量计算表达式 */
  displayXExpression?: string;

  /** 获取或设置设备实时Y坐标偏移量计算表达式 */
  displayYExpression?: string;

  /** 获取或设置设备实时X坐标偏移量计算表达式 */
  displayZExpression?: string;

  /** 获取或设置布局对象需要显示的文字 */
  displayText?: string;

  /** 获取或设置布局对象显示的文字所使用的字体名称 */
  displayTextFont?: string;

  /** 获取或设置布局对象显示的文字的颜色 */
  displayTextFontColor?: string;

  /** 获取或设置布局对象显示的文字的字体大小 */
  displayTextFontSize!: number;

  /** 获取或设置布局对象显示的文字的垂直对齐方式 */
  displayTextVAlignment!: number;

  /** 获取或设置布局对象显示的文字的水平对齐方式 */
  displayTextHAlignment!: number;

  /** 获取或设置布局对象默认显示的颜色 */
  defaultColor?: string;
  labelBackgroundColor?: string;
  thickness!: number;
  thicknessColor?: string;

  /** 获取或设置布局对象对应的显示模型路径 - babylon.js参数 - 用来存储模型路径 */
  displayModel?: string;

  /** 获取或设置布局对象所属区域编号 */
  areaId!: number;

  /** 获取或设置布局对象所属的父区域编号 - babylon.js参数 - 用来标记父节点编号 */
  parentAreaId!: number;

  /** 获取或设置工作的扩展信息内容 */
  extendInfos?: string;

  /** 获取或设置备注信息 */
  remark?: string;

  /** 获取或设置是否被启用 */
  isUsed!: boolean;
}
